Add data collection pipeline for DCF analysis #18
+339
−3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
New src/dcf_inputs.py collects and derives the inputs a future DCF (discounted cash flow) model will need, from the same cached raw data metrics_engine.py already uses — no new network calls. This is intentionally data collection only, not the DCF calculation itself (projection, terminal value, present value), which stays out of scope for a separate future issue.
config.py: new FIELD_ALIASES entries for cash flow statement fields, verified against real cached yfinance payloads rather than guessed. Also added DCF_MARKET_ASSUMPTIONS documenting the two inputs yfinance can't provide at all (risk-free rate, equity risk premium) and that need to be set manually.
Verified compute_dcf_inputs() and build_fcf_trend() manually against real cached data (Mowi ASA) before writing tests, to confirm the numbers were sensible, not just that the code runs.
Full suite: 50 passed, 89% coverage on src/.
Closes #1